Θέλω να παρακολουθώ ένα συμβάν αποσύνδεσης στο NAS μου. έχει μια ξεχωριστή σελίδα για να αποσυνδέσετε όλες τις μονάδες USB. Το έχω συμπεριλάβει μέσω του iframe και θέλω να διατηρήσω τη φόρτωση του ιστότοπου έως ότου η πηγή εικόνας αλλάξει σε μια συγκεκριμένη πηγή (μια πράσινη γραμμή, που δείχνει ότι έχει κάνει αποσύνδεση). Ο λόγος για τον οποίο θέλω να το διατηρήσω φόρτωση είναι επειδή το καλώ μέσω μιας λειτουργίας jquery.get από άλλον ιστότοπο και θέλω να περιμένει μέχρι να ολοκληρωθεί η διαδικασία αποσύνδεσης. Θα ήταν υπέροχο αν αυτό είναι δυνατό μόνο σε απλή javascript, αλλά αν χρειαστεί, μπορώ επίσης να συμπεριλάβω jquery. Εδώ είναι αυτό που έχω φτάσει μέχρι τώρα: <άτομο> Λαμβάνω αμέσως ένα σφάλμα ότι το στοιχείο "uiView_TestPic" δεν υπάρχει, ακόμη και όταν προσθέτω ένα χρονικό όριο πριν από την εκτέλεση του ελέγχου. Ο συμπεριλαμβανόμενος ιστότοπος iFrame σταματά να φορτώνει μόλις φορτωθούν όλες οι εικόνες και όχι όταν ολοκληρωθεί η όλη διαδικασία.
2021-02-05 08:19:57
Πρώτα απ 'όλα, και τα δύο καρέ πρέπει να εκτελούνται στον ίδιο τομέα, επειδή τα προγράμματα περιήγησης θα εμποδίσουν την πρόσβαση κώδικα σε ένα πλαίσιο από οτιδήποτε στο άλλο πλαίσιο εάν είναι διαφορετικοί τομείς. Εάν τα δύο πλαίσια δεν βρίσκονται στον ίδιο τομέα, τότε το iframe θα πρέπει να παρακολουθεί τον εαυτό του και να ειδοποιεί το άλλο πλαίσιο όταν έχει τελειώσει με τη χρήση κάποιου όπως το window.postMessage (). Εάν βρίσκονται στον ίδιο τομέα, αυτό είναι ελαφρώς περίπλοκο. Πρέπει να λάβετε το στοιχείο iframe (αυτό βρίσκεται στο κύριο έγγραφό σας). Πρέπει να περιμένετε να είναι έτοιμο (αφού πρέπει να φορτώσει τα δικά του περιεχόμενα). Στη συνέχεια, πρέπει να λάβετε το έγγραφο στο iframe. Στη συνέχεια, μπορείτε να βρείτε την επιθυμητή εικόνα στο iframe. Τότε μπορείτε να παρατηρήσετε το περιεχόμενό του. Και, φυσικά, μπορείτε να το κάνετε μόνο εάν το iframe είναι ο ίδιος τομέας με την κύρια σελίδα σας (λόγω περιορισμών ασφαλείας). Αρχικά, προσθέστε ένα αναγνωριστικό στο iframe: